package com.sqlcheck.service;

import com.sqlcheck.dto.response.DashboardStatisticsVO;

import java.util.List;

public interface DashboardService {
    
    /**
     * 获取仪表盘完整统计信息
     */
    DashboardStatisticsVO getDashboardStatistics(Long userId);
    
    /**
     * 获取任务统计信息
     */
    DashboardStatisticsVO.TaskStatistics getTaskStatistics(Long userId);
    
    /**
     * 获取SQL语句统计信息
     */
    DashboardStatisticsVO.SqlStatementStatistics getSqlStatementStatistics(Long userId);
    
    /**
     * 获取兼容性问题统计信息
     */
    DashboardStatisticsVO.IssueStatistics getIssueStatistics(Long userId);
    
    /**
     * 获取规则统计信息
     */
    DashboardStatisticsVO.RuleStatistics getRuleStatistics();
    
    /**
     * 获取最近任务列表
     */
    List<DashboardStatisticsVO.RecentTaskVO> getRecentTasks(Integer limit, Long userId);
    
    /**
     * 获取系统状态信息
     */
    DashboardStatisticsVO.SystemStatus getSystemStatus();
}